package git.soulbgm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import git.soulbgm.pojo.SysConfigParam;
import git.soulbgm.pojo.vo.SysConfigParamVo;

import java.util.List;

/**
 * 系统配置参数服务
 *
 * @author SoulBGM
 * @date 2022/07/08 18:10
 */
public interface SysConfigParamService extends IService<SysConfigParam> {

    /**
     * 按照系统配置信息ID查找
     *
     * @param code 代码
     * @return {@link List}<{@link SysConfigParamVo}>
     */
    List<SysConfigParamVo> findByCode(Long code);

    /**
     * 组成数据
     *
     * @param list 列表
     * @return {@link List}<{@link SysConfigParamVo}>
     */
    List<SysConfigParamVo> composeData(List<SysConfigParam> list);

    /**
     * 通过参数列表组成Json格式数据返回
     *
     * @param paramList 参数列表
     * @param paramType 类型
     * @return {@link String}
     */
    String getJson(List<SysConfigParamVo> paramList, int paramType);

    /**
     * 保存
     *
     * @param param 参数
     * @param code  系统配置信息ID
     * @return boolean
     */
    boolean save(List<SysConfigParamVo> param, Long code);
}
